package gogoqiu.plugin

import org.gradle.api.Plugin
import org.gradle.api.Project
import org.gradle.api.DefaultTask
import org.gradle.api.tasks.TaskAction
import gogoqiu.demo.Build
import java.io.File;

// 定义自定义任务：sayhello
class SayHelloTask extends DefaultTask {
    @TaskAction
    void execute() {
        println "Hello from custom task!"
    }
}

// 自定义插件
class MyPlugin implements Plugin<Project> {
    void apply(Project project) {        
        // 1. 注册自定义任务 sayhello
        def sayHelloTask = project.tasks.register('sayhello', SayHelloTask) {
            group = 'Custom' // 可选：指定任务组，方便在 IDE 中查看
            description = 'A custom task that says hello'
        }

        // 2. 让 assemble 任务依赖 sayhello 任务
        // 注意：assemble 任务由 Java 插件、Application 插件等提供，需确保项目应用了这些插件
        project.tasks.named('assemble').configure {
            dependsOn(sayHelloTask) // 关键：assemble 依赖 sayhello，执行 assemble 会先执行 sayhello
        }
    }
}

